
#define F_CPU 16000000UL 

#define ANZ_SERVOS 5
#define RECHTS 0
#define LINKS 1
#define AUS 0
#define AKTIV 1
#define ABBRUCH 2
#define TIMERRUECKLAUF 3
#define FEHLER 4
#define COUNT_UP 5
#define COUNT_DOWN 6
#define READY 7

#include <stdio.h> 
#include <stdlib.h> 
#include <avr/io.h>
#include <avr/interrupt.h>
#include <util/delay.h>


int RpmSoll[2];
unsigned int StatusAbstandMessung;
volatile unsigned int StatusTimer1;
int Heading;

//Funktionsdeklarationen

void UartInit(void);
void DrehzahlBerechnung(unsigned int Periode_ms);
void InitDrehzahlMessung();

void InitServos(int Anzahl, int BelegungsMaske, int Vorbelegung);
void SetServo(int Nr, int Pos);
int GetServoPos(int Nr);
int RPM(int Seite);
void UartSenden (char *s);
void SetRpmRight(int Rpm);
void SetRpmSpeed(int Seite, int Speed);

void wait_us(int mikroSec);
void UartPolling(void);

int RpmIst(int Seite);
void SetRpm(unsigned int Seite);

